1 Imports System.Data.SqlClient
2 Public Class Xe
3     Private flag As Boolean
4     Private lenh As String
5     Private bang_xe As DataTable
6     Private vi_tri_hien_hanh As Integer
7
8     Public Sub UpdateXe()
9         Doc_bang_Xe()
10         Tao_lien_ket()
11         vi_tri_hien_hanh =
0
12         Xuat_thong_tin_Xe()
13         Form_Main.Luoi_Xe.ReadOnly = True
14         Lock_Control(False)
15         LockButton(False)
16
17         With Form_Main.cbo_HieuXe.Items
18             .Add(
"Ford Transit")
19             .Add(
"Huyndai Country")
20             .Add(
"Toyota")
21             .Add(
"Ford Everest")
22             .Add(
"Huyndai")
23         End With
24         
'Doc du lieu tu bang_xe vao cbo_HieuXe
25         
'Dim dem As Integer = 0
26         
'For i As Integer = 0 To bang_xe.Rows.Count - 1
27         
' For j As Integer = 0 To Form_Main.cbo_HieuXe.Items.Count - 1
28         
' If Form_Main.cbo_HieuXe.Items(j).ToString = bang_xe.Rows(i)("Hieu_Xe").ToString Then
29         
' dem += 1
30         
' End If
31         
' Next
32         
' If dem = 0 Then
33         
' Form_Main.cbo_HieuXe.Items.Add(bang_xe.Rows(i)("Hieu_Xe").ToString)
34         
' End If
35         
' dem = 0
36         
'Next
37     End Sub
38
39 #Region
"Doc bang xe da xu ly xong"
40     Private Sub Doc_bang_Xe()
41         
'Lam sach luoi sau moi lan cap nhat
42         Form_Main.Luoi_Xe.ClearSelection()
43         lenh =
"Select * from Xe"
44         bang_xe = Doc_bang(lenh)
45         Form_Main.Luoi_Xe.DataSource = bang_xe
46     End Sub
47 #End Region
48
49 #Region
"Xu ly cac nut di chuyen va xuat thong tin xe da hoan tat"
50     Private Sub Xuat_thong_tin_Xe()
51         Dim dong As DataRow = bang_xe.Rows(vi_tri_hien_hanh)
52         With Form_Main
53             .cbo_SoXe.Text = dong(
"So_Xe").ToString
54             .cbo_HieuXe.Text = dong(
"Hieu_Xe").ToString
55             .txt_DoiXe.Text = CStr(dong(
"Doi_Xe"))
56             .cbo_SoChoNgoi.Text = dong(
"So_Cho_Ngoi").ToString
57         End With
58     End Sub
59
60     Public Sub Di_chuyen_ve_sau()
61         If vi_tri_hien_hanh < bang_xe.Rows.Count -
1 Then
62             vi_tri_hien_hanh +=
1
63             Xuat_thong_tin_Xe()
64         End If
65     End Sub
66
67     Public Sub Di_chuyen_ve_truoc()
68         If vi_tri_hien_hanh >
0 Then
69             vi_tri_hien_hanh -=
1
70             Xuat_thong_tin_Xe()
71         End If
72     End Sub
73
74     Public Sub Di_chuyen_ve_dau()
75         vi_tri_hien_hanh =
0
76         Xuat_thong_tin_Xe()
77     End Sub
78
79     Public Sub Di_chuyen_ve_cuoi()
80         vi_tri_hien_hanh = bang_xe.Rows.Count -
1
81         Xuat_thong_tin_Xe()
82     End Sub
83 #End Region
84
85 #Region
"Tao lien ket giua cac dieu khien voi datagridview da hoan tat"
86     Private Sub Tao_lien_ket()
87         If Form_Main.cbo_SoChoNgoi.Text =
"" Then
88             With Form_Main.cbo_SoChoNgoi
89                 .Items.Add(
7)
90                 .Items.Add(
16)
91                 .Items.Add(
25)
92                 .Items.Add(
30)
93                 .Items.Add(
45)
94             End With
95         End If
96         With Form_Main.cbo_SoXe
97             .DataSource = Form_Main.Luoi_Xe.DataSource
98             .DisplayMember =
"So_Xe"
99             .ValueMember =
"So_Xe"
100             .SelectedValue =
"So_Xe"
101         End With
102         Xoa_lien_ket()
103         
'Form_Main.cbo_IdXe.DataBindings.Add("text", Form_Main.Luoi_Xe.DataSource, "Id_Xe")
104         
'Do Id xe la value member nen ta se khoi tao no luc moi load form va
105         
'------------Cach1 nhung khong hay, ta nen huy vung nho cua bang sau moi lan xai xong
106         
'Form_Main.cbo_IdXe.Text = bang_xe.Rows(0)("Id_Xe").ToString
107         
'-----------------Cach 2--------------------------
108         Form_Main.cbo_SoXe.Text = Form_Main.Luoi_Xe.Rows(
0).Cells.Item(0).Value.ToString
109         Form_Main.cbo_HieuXe.DataBindings.Add(
"text", Form_Main.Luoi_Xe.DataSource, "Hieu_Xe")
110         Form_Main.txt_DoiXe.DataBindings.Add(
"text", Form_Main.Luoi_Xe.DataSource, "Doi_Xe")
111         Form_Main.cbo_SoChoNgoi.DataBindings.Add(
"text", Form_Main.Luoi_Xe.DataSource, "So_Cho_Ngoi")
112     End Sub
113 #End Region
114
115 #Region
"Xoa lien ket giua cac dieu khien voi datagridview da hoan tat"
116     Private Sub Xoa_lien_ket()
117         Form_Main.cbo_SoXe.DataBindings.Clear()
118         Form_Main.cbo_HieuXe.DataBindings.Clear()
119         Form_Main.txt_DoiXe.DataBindings.Clear()
120         Form_Main.cbo_SoChoNgoi.DataBindings.Clear()
121     End Sub
122 #End Region
123
124 #Region
"Them, sua xe da hoan tat"
125     Public Sub Them_Xe()
126         flag = True
127         Lock_Control(True)
128         LockButton(True)
129         Clear_Control()
130     End Sub
131    
132     Public Sub Sua_Xe()
133         flag = False
134         Lock_Control(True)
135         LockButton(True)
136         
'Form_Main.cbo_SoXe.Enabled = False
137         Form_Main.Luoi_Xe.ReadOnly = False
138         Form_Main.cbo_SoXe.Enabled = False
139     End Sub
140
141     Public Sub Luu_thay_doi()
142         Tao_ket_noi()
143         If connect.State = ConnectionState.Open Then
144             connect.Close()
145         End If
146         With Form_Main
147             If flag = True Then
'Them xe moi
148                 If TestInfo() Then
149                     Dim dg As DialogResult = MessageBox.Show(
"Ban có chắn chắc muốn thêm xe này không." & vbNewLine & _
150                                 
"Click OK đê đồng ý, Cancel để hủy.", "Thông báo", MessageBoxButtons.OKCancel, MessageBoxIcon.Question)
151                     If dg = Windows.Forms.DialogResult.OK Then
152                         Dim flag As Integer =
0
153                         Dim sqlCM As New SqlCommand(
"select So_Xe from Xe", connect)
154                         Dim sqlDR As SqlDataReader
155                         connect.Open()
156                         sqlDR = sqlCM.ExecuteReader
157                         While sqlDR.Read() = True
158                             If sqlDR.GetValue(
0).ToString = .cbo_SoXe.Text Then
159                                 flag =
1
160                                 MessageBox.Show(
"Số xe " + .cbo_SoXe.Text + " đã tồn tại, vui lòng kiểm tra lại số xe bạn nhập!", "Thông Báo", MessageBoxButtons.OK, MessageBoxIcon.Warning)
161                                 Exit Sub
162                             End If
163                         End While
164                         connect.Close()
165                         If flag =
0 Then
166                             lenh =
"Insert into Xe(So_Xe, Hieu_Xe, Doi_Xe, So_Cho_Ngoi)"
167                             lenh &=
" Values ('" + .cbo_SoXe.Text + "', '" + .cbo_HieuXe.Text + "', '" + .txt_DoiXe.Text + "', '" + .cbo_SoChoNgoi.Text + "')"
168                             Dim bo_lenh As New SqlCommand(lenh, connect)
169                             connect.Open()
170                             Try
171                                 bo_lenh.ExecuteNonQuery()
172                                 connect.Close()
173                                 Doc_bang_Xe()
174                                 Tao_lien_ket()
175                                 vi_tri_hien_hanh =
0
176                                 Xuat_thong_tin_Xe()
177                                 Form_Main.cbo_HieuXe.Items.Clear()
178                                 Form_Main.Luoi_Xe.Enabled = True
179                                 MsgBox(
"Đã cập nhật dữ liệu thành công", MsgBoxStyle.Information, "Thông báo")
180                             Catch ex As Exception
181                                 MessageBox.Show(
"Không cập nhật được dữ liệu, thêm xe thông thành công.", "Thông báo lỗi", MessageBoxButtons.OK, MessageBoxIcon.Error)
182                                 connect.Close()
183                             End Try
184                         End If
185                     Else
186                         Huy_thao_tac()
187                     End If
188                 End If
189             Else
190                 
'Sua thong tin nguoi dung
191                 If TestInfo() Then
192
193                     Dim dialog As DialogResult = MessageBox.Show(
"Ban có chắn chắc muốn sửa thông tin xe này." & vbNewLine & _
194                                 
"Click OK đê đồng ý, Cancel để hủy.", "Thông báo", MessageBoxButtons.OKCancel, MessageBoxIcon.Question)
195                     If dialog = DialogResult.OK Then
196                         lenh =
"Update Xe Set Hieu_Xe = '" + .cbo_HieuXe.Text + "', Doi_Xe = '" + .txt_DoiXe.Text + "', So_Cho_Ngoi = '" + .cbo_SoChoNgoi.Text + "' where So_Xe = '" + .cbo_SoXe.Text + "'"
197                         Dim sqlqr As New SqlCommand(lenh, connect)
198                         Try
199                             connect.Open()
200                             sqlqr.ExecuteNonQuery()
201                             connect.Close()
202                             UpdateXe()
203                             Lock_Control(False)
204                             LockButton(False)
205                             Form_Main.Luoi_Xe.Enabled = True
206                             MsgBox(
"Đã cập nhật dữ liệu thành công", MsgBoxStyle.Information, "Thông báo")
207                         Catch ex As Exception
208                             MessageBox.Show(
"Không cập nhật được dữ liệu, sửa thông tin xe thông thành công.", "Thông báo lỗi", MessageBoxButtons.OK, MessageBoxIcon.Error)
209                             connect.Close()
210                         End Try
211                     Else
212                         Huy_thao_tac()
213                     End If
214                 End If
215             End If
216         End With
217     End Sub
218 #End Region
219
220 #Region
"Xu ly huy thao tac cap nhat da hoan tat"
221     Public Sub Huy_thao_tac()
222         Form_Main.Luoi_Xe.Enabled = True
223         Xoa_lien_ket()
224         Lock_Control(False)
225         LockButton(False)
226         UpdateXe()
227     End Sub
228 #End Region
229
230 #Region
"Xoa xe hoan tat"
231     Public Sub Xoa_Xe()
232         Dim qs = MessageBox.Show(
"Bạn chắc chắn muốn xóa tất cả thông tin về:" & vbNewLine & _
233                         
" - So xe: " & Form_Main.cbo_SoXe.Text & vbNewLine & _
234                         
" - Hieu xe: " & Form_Main.cbo_HieuXe.Text, "Thông báo", MessageBoxButtons.YesNo, MessageBoxIcon.Information)
235         If qs = DialogResult.Yes Then
236             Dim lenh As String =
"Delete from Xe where So_Xe = '" & Form_Main.cbo_SoXe.SelectedValue.ToString & "'"
237             Dim query1 As New SqlCommand(lenh, connect)
238             Try
239                 connect.Open()
240                 query1.ExecuteNonQuery()
241                 connect.Close()
242                 UpdateXe()
243                 MsgBox(
"Dữ liệu đã xóa thành công", vbInformation, "Thông báo")
244             Catch ex As Exception
245                 MsgBox(
"Không cập nhật được dữ liệu, xóa xe không thành công", vbExclamation, "Thông báo")
246             End Try
247         Else
248             MsgBox(
"Đã hủy thao tác xóa!", vbExclamation, "Thông báo")
249         End If
250     End Sub
251 #End Region
252
253 #Region
"Cac xu ly phu voi cac dieu khien da hoan tat"
254     Private Sub Lock_Control(ByVal f As Boolean)
255         With Form_Main
256             .cbo_SoXe.Enabled = True
257             .cbo_HieuXe.Enabled = f
258             .txt_DoiXe.Enabled = f
259             .cbo_SoChoNgoi.Enabled = f
260         End With
261     End Sub
262
263     Private Sub Clear_Control()
264         With Form_Main
265             .cbo_SoXe.Text =
""
266             .cbo_HieuXe.Text =
""
267             .txt_DoiXe.Text =
""
268             .cbo_SoXe.Focus()
269         End With
270     End Sub
271
272     Private Sub LockButton(ByVal dt As Boolean)
273         With Form_Main
274             .btn_ThemXe.Enabled = Not dt
275             .btn_SuaXe.Enabled = Not dt
276             .btn_XoaXe.Enabled = Not dt
277             .btn_LuuXe.Enabled = dt
278             .btn_HuyXe.Enabled = dt
279         End With
280     End Sub
281
282     Private Function TestInfo() As Boolean
283         TestInfo = True
284         With Form_Main
285             If Trim(.cbo_SoXe.Text) =
"" OrElse Trim(.cbo_HieuXe.Text) = "" _
286             OrElse Trim(.txt_DoiXe.Text) =
"" OrElse Trim(.cbo_SoChoNgoi.Text) = "" Then
287                 TestInfo = False
288                 MsgBox(
"Bạn phải nhập đầy đủ thông tin!", MsgBoxStyle.Exclamation, "Thông báo lỗi")
289             End If
290
291             If Trim(.cbo_SoXe.Text) =
"" Then
292                 .cbo_SoXe.Focus()
293                 Exit Function
294             ElseIf Trim(.cbo_HieuXe.Text) =
"" Then
295                 .cbo_HieuXe.Focus()
296                 Exit Function
297             ElseIf Trim(.txt_DoiXe.Text) =
"" Then
298                 .txt_DoiXe.Focus()
299                 Exit Function
300             ElseIf Trim(.cbo_SoChoNgoi.Text) =
"" Then
301                 .cbo_SoChoNgoi.Focus()
302                 Exit Function
303             End If
304
305             If Trim(.cbo_SoXe.Text).Length >
8 Then
306                 TestInfo = False
307                 MsgBox(
"Số xe không được lớn hơn 8 kí tự!", MsgBoxStyle.Exclamation, "Thông báo lỗi")
308                 .txt_Password.Focus()
309                 Exit Function
310             End If
311
312         End With
313     End Function
314 #End Region
315
316 End Class



Quản lý phần mềm bán vé xe VB 8.391 lượt xem

Gõ tìm kiếm nhanh...